home *** CD-ROM | disk | FTP | other *** search
/ PsL Monthly 1993 December / PSL Monthly Shareware CD-ROM (December 1993).iso / prgmming / dos / pascal / twins.com / WINDEMO.PAS < prev    next >
Encoding:
Pascal/Delphi Source File  |  1990-02-15  |  1.4 KB  |  54 lines

  1. PROGRAM WinDemo;
  2.  
  3.  
  4. Uses Crt,Screens,Windows;
  5.  
  6. CONST
  7.     Shadow = TRUE;
  8.     NoShadow = FALSE;
  9.  
  10. VAR
  11.     Wins : ARRAY[1..5] OF WindowPtr;
  12.     Ch : CHAR;
  13.     InitScreen : ScrPtr;
  14.     Buffer : POINTER;
  15.  
  16. BEGIN
  17.     InitScreen := SaveScreen;
  18.     ClrScr;
  19.     FillArea(1,1,25,80,Cyan+BlueBG,#176);
  20.     NEW(Wins[1],Init);
  21.     Wins[1]^.MakeWin(1,1,12,40,White+RedBG,Red,DoubleBrdr,#219,Shadow);
  22.     Wins[1]^.TitleWin(Left,' Window 1 ');
  23.     NEW(Wins[2],Init);
  24.     Wins[2]^.MakeWin(5,20,15,60,Black+GreenBG,Green,Stars,#32,Shadow);
  25.     Wins[2]^.TitleWin(Center,' Window 2 ');
  26.     NEW(Wins[3],Init);
  27.     Wins[3]^.MakeWin(8,40,12,70,White+BlueBG,Blue,SolidBrdr,#176,Shadow);
  28.     Wins[3]^.TitleWin(Right,' Window 3 ');
  29.     NEW(Wins[4],Init);
  30.     Wins[4]^.MakeWin(10,15,22,35,White+MagentaBG,Magenta,SingleBrdr,#177,Shadow);
  31.     Wins[4]^.TitleWin(Left,' Window 4 ');
  32.     NEW(Wins[5],Init);
  33.     Wins[5]^.MakeWin(19,20,24,70,Yellow+BlackBG,Yellow,QuarterTone,'X',Shadow);
  34.     Wins[5]^.TitleWin(Center,' Window 5 ');
  35.     Wins[5]^.WriteWinC(22,'Use cursor keys to move this window !');
  36.     REPEAT
  37.         Ch := ReadKey;
  38.         CASE Ch OF
  39.             #72 : Wins[5]^.MoveWin(1,15);
  40.             #75 : Wins[5]^.MoveWin(10,1);
  41.             #77 : Wins[5]^.MoveWin(10,29);
  42.             #80 : Wins[5]^.MoveWin(19,20);
  43.         END;
  44.     UNTIL Ch = #27;
  45.     SaveScr(10,20,15,60,Buffer);
  46.     ClrScr;
  47.     Writeln('The center portion of the screen was saved.  Press any key to redisplay...');
  48.     Ch := ReadKey;
  49.     RestScr(1,1,6,41,Buffer);
  50.     Ch := ReadKey;
  51.     RestoreScreen(InitScreen);
  52.     ClrScr;
  53.     CursorOn;
  54. END.